This invention relates to an image processing system for use with a color copier and other image recording apparatus. More particularly, this invention relates to a system for performing operations that comprise filling closed areas of interest with designated solid colors (those operations are hereinafter referred to collectively as "painting").
Image recording apparatus are known that read the image of a document with a line sensor assembly composed of CCDs, etc. and that output a color hard copy after performing the necessary image processing. FIG. 10 shows schematically the configuration of such image recording apparatus. In FIG. 10, IIT (image input terminal) 101 has a line sensor assembly composed of CCDs, etc. and reads image information from a black-and-white or color document at a preset density, say, 16 dots/mm to generate signals for three primary colors B, G and R, which signals are converted to digital image data comprising a predetermined number of bits say 8 bits (256 gradations) (said digital image data is hereinafter referred to simply as "image data"), with the image data being then output to IPS (image processing system) 102.
Supplied with B, G and R image data, each composed of 8 bits, coming from IIT 101, IPS 102 converts those data to signals for four development colors Y (yellow), M (magenta), C (cyan) and K (black); thereafter, a signal X for a process color, or a color to be developed by the current development process, is selected and binary encoded to create ON/OFF data on the signal for the process color, which is then output to IOT (image output terminal) 103. IPS 102 performs various operations of data processing in order to improve the reproducibility of colors, gradations, fine details and other factor. While IPS 102 can be configured in various ways, the configuration previously proposed by the assignee is shown in FIG. 11.
An END (equivalent neutral density) conversion module 301 is such that optical read-out signals from a color document as obtained in IIT 101 are adjusted (converted) to color signals that have attained a gray balance. This module is equipped with 16 conversion tables which, when information is read from a gray document, converts it to B, G and R color separation signals with invariably the same graduation in correspondence to the readout level (black white) so that they are output to a color masking module 302.
The color masking module 302 converts the B, G and R color separation signals to signals for development colors Y, M and C by either matrix operations or table look-up.
A document size detection module 303 not only detects the document size in a prescanning more but also performs a frame erase operation, i.e., erasure of the platen color in a document reading/scanning mode. If the document's edges are not parallel to the platen edges or if it is not rectangular, the module 303 detects and stores maximum and minimum values for the horizontal and vertical directions (x1, x2, y1, y2).
A color conversion module 304 performs conversion in a specific area with a designated color. If the specific area is not a color conversion area, the module 304 sends out Y, M and C of the document unaltered in accordance with the area signal supplied from an area image control module 311 (to be described below). Within a color conversion area, the module 304 detects the designated color and sends out Y, M and C of the converted colors.
URC (undercolor removal) & black generation module 305 generates a sufficient amount of K to prevent color contamination and accordingly reduces Y, M and C in equal amounts (to remove the undercolor). The purpose of the module 305 is to prevent contamination with black and to insure that the saturation of low-value and high-saturation colors will not decrease.
A spatial filter module 306 comprises a digital filter and a modulation table that generate information on halftone dot removal and edge enhancement. If the document is photographic or printed by the halftone process, the module 306 performs smoothing and if the document is composed of characters or line drawings, the module 306 performs edge enhancement.
In response to ON/OFF signals from IPS 102, IOT 103 implements four copy cycles (in the case of four full-color copying) using Y, M, C and K process colors, whereby the reproduction of a full-color document is achieved. In practice, however, subtle adjustments that take into account the characteristics of IOT 103 are necessary in order to achieve faithful reproduction of colors that are theoretically determined by signal processing.
The (tone reproduction control) module 307 is used to provide improve color reproduction and has capabilities for performing various edit processes in accordance with area signals, including density adjustment, contrast adjustment, negative-to-positive reversal or vice versa, color balance adjustment, character mode and transparent synthesis.
A resizing module 308 performs resizing in the fast scan direction by reduction interpolation or additive interpolation when data is read from or written into a line buffer. Further, the module 308 is capable of performing a shift image process in the fast scan direction either by reading out data from the middle of the line buffer or by reading it with certain time lag. By reading the data repeatedly, iterations can be performed, whereas a mirror image operation can be accomplished by reading out the data in opposite direction. In the slow scan direction, the module 308 varies the scan speed of IIT 101 from twice to one-fourth the normal speed whereas it performs resizing from 50% to 400%.
A screen generator 309 converts gradation signals or process colors to binary code ON/OFF development color signals and outputs them to an IOT interface 310. The function of the screen generator 309 is to perform binary encoding and error diffusing operations by comparing matrices of threshold valves with values of data expressed in gradations.
The area image control module 311 is capable of setting a predetermined number of rectangular areas, say, 7 rectangles, and their priorities, with area control information being set in correspondence to the respective area. Various kinds of control information are available, including a color mode which selects among color conversion, a monochromatic color mode and a full-color mode, modulation select information on pictures, characters, etc., select information for TRC 307 and select information for screen generator 309. Those kinds of information are used to control the color masking module 302, color conversion module 304, UCR module 305, spatial filter 306 and TRC module 307.
An edit control module reads information not from rectangles but from pie charts and other designated areas of indefinite shape on the document and enables painting to be done in those areas. This module sets commands 0-15 as commands for performing fill pattern, fill logic, LOGO and other operations.
As described above, the signals produced by reading document's information from IIT 101 are first subjected to END conversion, then color masked. Thereafter, the document size that permits more efficient processing with full-color data is detected and frame erasure is performed. Following color conversion, the undercolor is removed and a black color is generated to permit handling of process colors. On the other hand, the spatial filer and processes such as color modulation, TRC and resizing are directed to data of process colors, whereby the volume of data to be processed in reduced compared to the full-color data and the number of necessary conversion tables is reduced to one-third of the tables that would otherwise be required. This permits a corresponding increase in the number of kinds of conversion tables so as to enhance the latitude in adjustment and the reproducibility of colors, gradations and fine details.
The IOT 103 which performs development in four colors Y, M, C and K with a toner or by some other suitable means may have a well known configuration. Suppose here the case where a photoreceptor typically composed of an organic light-sensitive belt is illuminated with laser light modulated with image data produced from IPS 102, whereupon a latent electrostatic image is formed and subsequently developed with a toner. The IOT 103 receives binary coded development color signals supplied from the screen generator 309 and reproduces a gray-scale image by turning on and off an elliptical laser beam that approximately measures 80 .mu.m by 60 .mu.m so as to correspond to a density of 16 dots/mm. The IOT 103 also detects the quantization error between the ON/OFF binary signal supplied from the screen generator 309 and the input gradation signal and performs error diffusion through a feedback loop, to thereby achieve better reproduction of gradations when viewed macroscopically.
A UI (user interface) 104 sets various copy modes including the number of copies to be made, the paper size, a color mode selection between copying in four full colors or copying in black-and-white, and an edit process. The UI 104 may have a well known configuration.
An edit pad 105 which is composed of a digitizer is used to set a specific area to be edited. In a painting operation to be implemented by the system of the present invention, the edit pad 105 is used to designate a signal point within a closed area of the document.
A CPU (central processing unit) 106 manages the overall operation of the image recording apparatus of interest by coordinating the operations of the individual components. Stated more specifically, the CPU 106 controls the operations of IIT 101, IPS 102 and IOT 103 based on the copy made set by UI 104 or the area or point set by the edit pad 105.
As described on the foregoing pages, the image recording apparatus having the configuration shown in FIG. 10 is capable of performing various edit processes on the image in various kinds of documents but, on the pages that follow, we concern ourselves with painting. The following description is directed only to painting but it should be remembered that the apparatus is adapted to be capable of performing various other edit processes. It is also assumed in the following description that a black-and-white document is used in a paint mode.
Painting is implemented with an area command memory 312 and a color palette videos with 313. Suppose here that a closed area 108 drawn on the document 107 shown in FIG. 12 is to be filled with a solid red color. To begin with, the user manipulates UI 104 to select a paint mode from the menu of edit processes and select red as the color with which the area 108 is to be filled. At the same time, the user places the document 107 on the edit pad 105 and points to a desired point P within the closed area 108. Thereafter, the user places the document 107 on the platen and depresses the START button on UI 104 to instruct the commencement of copying. Then, CPU 106 first instructs IIT 101 to perform prescanning for reading the image on the document 107. At the same time, CPU 106 detects the closed area 108 and writes it into the area command memory 312. When this process ends, CPU 106 instructs IIT 101 to perform main scanning for starting the reading of image from the document 107. At the same time, CPU 106 reads closed area data from the area command memory 312 in synchronism with the main scanning. If the position of pixels being currently read is found to be interior to the closed area 108 on the basis of the closed area data, the color palette video switch 313 outputs red color data. If, on the other hand, the position of said pixels is found to be exterior to the closed area 108, the video switch 313 outputs image data associated with the document 107.
The above procedure enables painting to be accomplished easily by merely designating a closed area drawn on the documents and the color with which this area is to be filled. However, depending on the shape and size of the closed area, "holes" or portions that remain unfilled with the designated color sometimes occur within the designated closed area. Such "holes" are very conspicuous in closed areas that are filled with dark solid colors.
The reason for the occurrence of such "holes" in the paint mode is as follows. The closed area data written into the area command memory 312 is stored as image data. Needless to say, it is possible to detect the contour or outline of the closed area and store the associated addresses but this requires time-consuming arithmetic operations. Since it is necessary in painting to make quick decision as to whether the pixel being currently read in synchronism with the main scanning is interior or exterior to the designated closed area, it is not advisable to store the closed area data in the form of address data. Under these circumstances, the area command memory 312 may be composed as shown in FIG. 13, where "1" is written into pixels interior to the designated closed area 108 whereas "0" is written into exterior pixels. With this composition, pixels in the area command memory 312 are successively read out in synchronism with the main scanning and decision is made as to whether the pixel of interest is interior or exterior to the closed area depending upon whether said pixel has value "1" or "0". This obviously enables the painting operation to be implemented at high speed.
The foregoing discussion concerns the case where only one closed area need be painted. In order to insure that a multiple of closed areas can be painted with respective desired colors, the individual closed areas have to be distinguished from one another and this requires that the area command memory 312 have a large capacity. If there are 15 closed areas that need be painted, 4 bits are necessary to distinguish one closed area from another. In other words, four plane memories of the type shown in FIG. 13 are necessary. An example of this case is shown in FIG. 14, in which each of closed areas 110 is assigned area command F.sub.H whereas each of closed areas 111 is assigned area command E.sub.H. In the case under consideration, 4-bit data are successively read out of the area command memory 312 in synchronism with the main scanning. If the readout data is O.sub.H, the image data is produced as output from the color palette video switch 313; if the readout data is F.sub.H, the color data set in each closed area 110 is produced as output; and if the readout data is E.sub.H, the color data set in each closed area 111 is produced as output.
As mentioned above, a large capacity is necessary for storing more than one set of closed area data as image data. Suppose here that the image recording apparatus of interest is capable of reading documents of sizes up to A3 and also suppose that each of the four plane memories in the area command memory 312 has a density of 16 dots/mm which is equal to the readout density of IIT 101. then, at least 297.times.420.times.16.sup.2 bits are necessary for each plane memory and the area command memory 312, taken as a whole, needs a huge capacity, which only results in high cost. However, supplying high-quality apparatus at low cost is one of the great demands of modern industry and cost reduction is a requirement that has to be satisfied by all means. It is therefore necessary to reduce the capacity of the area command memory 312. Suppose here that the image data of 16 bits/mm that is read from IIT 101 is compressed to one-fourth the initial value and stored in the area command memory 312 at a density of 4 dots/mm. Then, the closed area data stored in the area command memory 312 is as shown in FIG. 15. If the image data read by IIT 101 at a density of 16 dots/mm is as shown in FIG. 15a, the 4.times.4 pixels in that image data re compressed to s single pixel in the area command memory 312. Let us assume here that the pixels in the area command memory are rendered black if at lest one of the 4 .times.4 pixels is black, or having value "1". Then, the contour line of the closed area is as indicated by hatched areas in FIG. 15b and only the unfilled pixels forming a hole as indicated by 113 are recognized to be interior to the closed area and assigned value "1". during the main scanning, the thus obtained closed area data is readout in synchronism and decision is made as to whether the pixels in the image data being currently read as enlarged to 4.times.4 pixels interior or exterior to the closed area. In the case shown in FIG. 15b, it is the pixels indicated by 113 in the area command memory 113 that are judged to be interior to the closed area and, eventually, the area hatched by lines sloping downward to the right in FIG. 15c remains unfilled to leave a hole.
As discussed above, the occurrence of "holes" in painting operations has been unavoidable if the capacity of the area command memory is reduced. This problem is particularly series with a closed area that is painted with a dark color since the "hole" is surrounded by the dark color and the black contour line of the closed area and hence is very unseemly.